From 3a5218ce94189241c6d8100d7f831a578dca9a5c Mon Sep 17 00:00:00 2001 From: "arun.sharma@intel.com[kaf24]" Date: Thu, 24 Feb 2005 09:39:38 +0000 Subject: [PATCH] bitkeeper revision 1.1236.1.11 (421da0daKKsT7rDnkbjTI6O17x8XIQ) [PATCH] trace-int.patch Trace guest interrupt injections too. Signed-off-by: Arun Sharma ===== arch/x86/vmx.c 1.21 vs edited ===== --- xen/arch/x86/vmx.c | 4 +--- xen/arch/x86/vmx_io.c | 2 ++ xen/include/asm-x86/vmx.h | 5 +++++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/xen/arch/x86/vmx.c b/xen/arch/x86/vmx.c index a30423bab9..01e627684d 100644 --- a/xen/arch/x86/vmx.c +++ b/xen/arch/x86/vmx.c @@ -706,9 +706,6 @@ void restore_xen_regs(struct xen_regs *regs) } #endif -#define TRC_VMX_VMEXIT 0x00040001 -#define TRC_VMX_VECTOR 0x00040002 - asmlinkage void vmx_vmexit_handler(struct xen_regs regs) { unsigned int exit_reason, idtv_info_field; @@ -813,6 +810,7 @@ asmlinkage void vmx_vmexit_handler(struct xen_regs regs) __vmwrite(VM_ENTRY_INTR_INFO_FIELD, intr_fields); __vmwrite(VM_ENTRY_EXCEPTION_ERROR_CODE, regs.error_code); ed->arch.arch_vmx.cpu_cr2 = va; + TRACE_3D(TRC_VMX_INT, ed->domain->id, TRAP_page_fault, va); } break; } diff --git a/xen/arch/x86/vmx_io.c b/xen/arch/x86/vmx_io.c index 2471e7ac2c..e3c4668d4a 100644 --- a/xen/arch/x86/vmx_io.c +++ b/xen/arch/x86/vmx_io.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include @@ -372,6 +373,7 @@ void vmx_intr_assist(struct exec_domain *d) __vmwrite(GUEST_INTERRUPTIBILITY_INFO, 0); + TRACE_2D(TRC_VMX_INT, d, highest_vector); if (highest_vector == vpit->vector) vpit->inject_point = NOW(); diff --git a/xen/include/asm-x86/vmx.h b/xen/include/asm-x86/vmx.h index b59f8d3216..82b8508a50 100644 --- a/xen/include/asm-x86/vmx.h +++ b/xen/include/asm-x86/vmx.h @@ -248,4 +248,9 @@ static inline int __vmxon (u64 addr) return -1; return 0; } + +#define TRC_VMX_VMEXIT 0x00040001 +#define TRC_VMX_VECTOR 0x00040002 +#define TRC_VMX_INT 0x00040003 + #endif /* __ASM_X86_VMX_H__ */ -- 2.30.2